Control Center支持检测监控数据中的异常事件并配置告警。您可以通过配置电子邮件来及时获取集群故障信息。每个触发器都基于一个带有条件值标准的指标,该条件决定触发器应何时触发。当条件满足时,它会执行所有未超出其关联的已启用操作。本文介绍如何在Control Center为云消息队列 Confluent 版集群设置告警。
告警指标
Metrics
类型 | 名称 | 含义 |
Broker触发器 | Bytes in | 一个Broker每秒产生的字节数。 |
Bytes out | 每秒从一个Broker获取的字节数(不考虑内部复制流量)。 | |
Fetch request latency | 在中位数、第95、第99 或第99.9个百分位数对此Broker的获取请求的延迟。单位:毫秒。 | |
Production request count | 每分钟对Broker的生产请求总数。 | |
Production request latency | 在中位数、第95、第99或第99.9个百分位向此Broker发出的生产请求的延迟。单位:毫秒。 | |
集群触发器 | Cluster down | 监控集群是否关闭。 |
Leader election rate | 分区Leader选举的次数。 | |
Offline topic partitions | 集群中离线的Topic分区总数。如果具有副本的Broker宕机,或者不干净的Leader选举被禁用并且副本不同步,导致没有Leader(可能需要确保没有消息丢失),就会发生这种情况。创建触发器应设置该值大于0。 | |
Unclear election count | 上一个时间间隔内报告的集群中不干净分区中Leader选举的次数。当在非同步的副本之间举行不干净的Leader选举时,如果在前Leader离线之前,该副本没有同步任何消息,则有可能发生数据丢失。因此,如果不干净的选举数量大于0,可以查询Broker日志以确定为什么Leader被重新选举,并寻找警告或错误消息。建议将brokers配置参数设置为unclean.leader.election.enable=false,以便同步副本集之外的副本永远不会被选为Leader,创建触发器时应设置该值不等于0。 | |
Under replicated topic partitions | 集群中副本不足的Topic分区总数,即同步副本数小于复制因子的分区。创建触发器时应设置该值大于0。 | |
ZK Disconnected | Brokers是否可以连接到ZooKeeper,取值范围:
| |
ZooKeeper expiration rate | Broker遇到ZooKeeper会话过期的速率。 | |
Consumer Group触发器 | Average latency | 消费者组的平均延迟。要监控此指标,您必须为消费者组中的客户端配置Confluent监控拦截器。单位:毫秒。 |
Consumer lag | 消费者应用程序在从生产者应用程序消费时落后多久。消费者滞后是结束偏移量和当前偏移量之间的差值。 | |
Consumer lead | 消费者应用程序在从生产者应用程序消费时提前量。消费者提前是当前偏移量和开始偏移量之间的差值。例如,从偏移量0开始的分区中,偏移量15处的消费者将有15的提前。该指标指示消费何时接近最早的可用消息,这意味着存在数据丢失的可能性。 | |
Consumption difference | 给定时间段内预期消耗值与实际消耗值之间的差值。通常,预期和实际消耗之间存在非常接近实时的差距。这种差距应该会随着时间的推移而缩小。 | |
Maximum latency | 消费者组的最大延迟。要监控此指标,您必须为消费者组中的客户端配置Confluent监控拦截器。单位:毫秒。 | |
Topic触发器 | Bytes in | 每秒进入Topic的字节数。 |
Bytes out | 每秒从Topic输出的字节数(不考虑内部复制流量)。 | |
Out of sync replica count | 集群中与Leader同步的Topic Partition副本总数。即分区的总和(Topic分区 * Topic复制因子)。 | |
Production request count | 每秒对集群中topic的生产请求量。 | |
Under replicated topic partitions | 复制不足的Topic分区的数量。该指标可监测Kafka Broker是否会在持有特定Topic分区时崩溃。 |
Condition
当被监控的度量值与用户设置的值之间的比较条件为真时,触发器将触发。取值如下:
Equal to:等于
Greater than:大于
Less than:小于
Not equal to:不等于
创建触发器
在顶部菜单栏,单击图标。
在Overview页面,单击Triggers页签,然后单击Add a trigger。
在New trigger页面,设置触发器名称、触发条件,单击Save。
创建完成后,可在Triggers页签单击目标触发器名称,在页面底部编辑或者删除该触发器。
创建操作表单
在Overview页面,单击Actions页签,然后单击Add an action。
在New action页面,设置以下参数,单击Save。
配置项
说明
Action Name
操作的名称。
Triggers
选择触发器。
Action
要执行的操作类型。取值如下:
Subject
与此操作关联的一个或多个电子邮件地址。每次执行操作时,都会向指定的电子邮件地址发送一条消息。用逗号分隔多个电子邮件地址。
Max send rate
执行操作的最大速率,与Frequency同时设置。
例如,输入1并设置Frequency为每天,表示每天发送一次警报。
Frequency
与Max send rate同时设置,可取每小时(默认)、每分钟、每 4 小时、每 8 小时、每天。
例如,选择每天并将Max send rate设置为1,表示每天发送一次警报。
单击Save。
创建完成后,可在Actions页签单击目标Action名称,在页面底部编辑或者删除该Action。
暂停和恢复所有警报
出于维护或故障排除需要,必要时可暂停所有启用的警报。在暂停和恢复期间会遵守启用或禁用的单个操作的现有设置,暂停时会忽略满足和触发的任何触发条件,并抑制与触发器关联的所有已启用操作。恢复警报后,下次触发条件触发时,其启用的操作会发送相应的警报。如果您停止并重新启动云消息队列 Confluent 版或Control Center,暂停的操作将恢复并再次变为活动状态。
操作步骤
在Overview页面,单击Actions页签。
打开Pause all actions开关。
阅读提示对话框中的内容,单击Confirm。
若要再次启用Action,请重复该过程并开启Pause all actions开关。
恢复暂停的警报操作
在Overview页面,单击Actions页签。
关闭Pause all actions开关。
阅读提示对话框中的内容,单击Confirm。
禁用和启用警报
创建Action时,默认情况下它处于启用状态。如果您不希望某个Action处于活动状态,请禁用该Action。暂停和恢复Action优先级低于Action的禁用设置,恢复暂停的警报不会激活禁用的Action。
操作步骤
在Overview页面,单击Actions页签。
在Actions页签,单击目标Action。
在Action详情页面,单击Edit,然后关闭Enabled开关。
若要再次启用Action,请重复该过程并开启Enabled开关。
相关文档
关于告警设置的更多信息,请参见Confluent官方文档。